package com.digitalchina.lxnsy.entity;

import com.digitalchina.lxnsy.constant.Constant;
import com.digitalchina.lxnsy.interfaces.IRecyclerType;

import java.io.Serializable;
import java.util.List;

/**
 * ================================================
 * 项目名称：BigData
 * 类描述：
 * 包名：com.digitalchina.bigdata.entity
 * 创建人：郑皓
 * 创建时间：2018/2/7 15:38
 * 修改备注：获取咨询动态列表（第一级）
 * ================================================
 */
public class ConsultDynamicListVO implements Serializable, IRecyclerType {

    public String id;
    public String createTime;
    public String updateTime;
    public String createdBy;
    public String updateBy;
    public Integer sort;
    public Integer status;
    public Integer version;
    public Integer shield;
    public String tenantCode;
    public String subjectInfoId;
    public Object createdByName;
    public QuestionInfoModelBean questionInfoModel;

    public UserInfo getUserInfo() {
        return userInfo;
    }

    public void setUserInfo(UserInfo userInfo) {
        this.userInfo = userInfo;
    }

    public UserInfo userInfo;


    public List<QuestionReplyInfoModels> questionReplyInfoModels;
    public SubjectExpertInfoBean subjectExpertInfo;
    public Integer replyStatus;
    public Object replyDate;
    public Object replyContent;
    public Object uploadImgs;
    public String questionInfoId;
    public String subjectExpertInfoId;
    public String content;

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getReplyQuantity() {
        return replyQuantity;
    }

    public void setReplyQuantity(String replyQuantity) {
        this.replyQuantity = replyQuantity;
    }

    private String replyQuantity;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getCreateTime() {
        return createTime;
    }

    public void setCreateTime(String createTime) {
        this.createTime = createTime;
    }

    public String getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(String updateTime) {
        this.updateTime = updateTime;
    }

    public String getCreatedBy() {
        return createdBy;
    }

    public void setCreatedBy(String createdBy) {
        this.createdBy = createdBy;
    }

    public String getUpdateBy() {
        return updateBy;
    }

    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }

    public Integer getSort() {
        return sort;
    }

    public void setSort(Integer sort) {
        this.sort = sort;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Integer getVersion() {
        return version;
    }

    public void setVersion(Integer version) {
        this.version = version;
    }

    public Integer getShield() {
        return shield;
    }

    public void setShield(Integer shield) {
        this.shield = shield;
    }

    public String getTenantCode() {
        return tenantCode;
    }

    public void setTenantCode(String tenantCode) {
        this.tenantCode = tenantCode;
    }

    public String getSubjectInfoId() {
        return subjectInfoId;
    }

    public void setSubjectInfoId(String subjectInfoId) {
        this.subjectInfoId = subjectInfoId;
    }

    public Object getCreatedByName() {
        return createdByName;
    }

    public void setCreatedByName(Object createdByName) {
        this.createdByName = createdByName;
    }

    public QuestionInfoModelBean getQuestionInfoModel() {
        return questionInfoModel;
    }

    public void setQuestionInfoModel(QuestionInfoModelBean questionInfoModel) {
        this.questionInfoModel = questionInfoModel;
    }

    public SubjectExpertInfoBean getSubjectExpertInfo() {
        return subjectExpertInfo;
    }

    public void setSubjectExpertInfo(SubjectExpertInfoBean subjectExpertInfo) {
        this.subjectExpertInfo = subjectExpertInfo;
    }

    public Integer getReplyStatus() {
        return replyStatus;
    }

    public void setReplyStatus(Integer replyStatus) {
        this.replyStatus = replyStatus;
    }

    public Object getReplyDate() {
        return replyDate;
    }

    public void setReplyDate(Object replyDate) {
        this.replyDate = replyDate;
    }

    public Object getReplyContent() {
        return replyContent;
    }

    public void setReplyContent(Object replyContent) {
        this.replyContent = replyContent;
    }

    public Object getUploadImgs() {
        return uploadImgs;
    }

    public void setUploadImgs(Object uploadImgs) {
        this.uploadImgs = uploadImgs;
    }

    public String getQuestionInfoId() {
        return questionInfoId;
    }

    public void setQuestionInfoId(String questionInfoId) {
        this.questionInfoId = questionInfoId;
    }

    public String getSubjectExpertInfoId() {
        return subjectExpertInfoId;
    }

    public void setSubjectExpertInfoId(String subjectExpertInfoId) {
        this.subjectExpertInfoId = subjectExpertInfoId;
    }

    @Override
    public int type() {
        return Constant.ITEM_TYPE_CONSULT_LIST;
    }

    public static class QuestionReplyInfoModels implements Serializable{
        public String id;
        public SubjectExpertInfoBean subjectExpertInfo;
        public Integer replyStatus;
        public String replyDate;
        public String replyContent;
        public String uploadImgs;

        public String getId() {
            return id;
        }

        public void setId(String id) {
            this.id = id;
        }

        public SubjectExpertInfoBean getSubjectExpertInfo() {
            return subjectExpertInfo;
        }

        public void setSubjectExpertInfo(SubjectExpertInfoBean subjectExpertInfo) {
            this.subjectExpertInfo = subjectExpertInfo;
        }

        public Integer getReplyStatus() {
            return replyStatus;
        }

        public void setReplyStatus(Integer replyStatus) {
            this.replyStatus = replyStatus;
        }

        public String getReplyDate() {
            return replyDate;
        }

        public void setReplyDate(String replyDate) {
            this.replyDate = replyDate;
        }

        public String getReplyContent() {
            return replyContent;
        }

        public void setReplyContent(String replyContent) {
            this.replyContent = replyContent;
        }

        public String getUploadImgs() {
            return uploadImgs;
        }

        public void setUploadImgs(String uploadImgs) {
            this.uploadImgs = uploadImgs;
        }
    }


    public static class UserInfo implements Serializable{
        public String mobilePhone;
        public String name;
        public String headPortrait;

        public String getMobilePhone() {
            return mobilePhone;
        }

        public void setMobilePhone(String mobilePhone) {
            this.mobilePhone = mobilePhone;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public String getHeadPortrait() {
            return headPortrait;
        }

        public void setHeadPortrait(String headPortrait) {
            this.headPortrait = headPortrait;
        }
    }
    public static class QuestionInfoModelBean implements Serializable{
        public String id;
        public String createTime;
        public String updateTime;
        public String createdBy;
        public String updateBy;
        public Integer sort;
        public Integer status;
        public Integer version;
        public Integer shield;
        public String tenantCode;
        public String subjectInfoId;
        public Object createdByName;
        public Integer consultationMode;
        public String content;
        public String uploadImgs;
        public Integer replyStatus;
        public String typeName;
        public Object questionReplyInfoModels;
        public UserInfoBean userInfo;
        public Object expertNames;
        public Object numberOfQuestions;
        public Object questionQuantity;
        public Integer replyQuantity;

        public String getId() {
            return id;
        }

        public void setId(String id) {
            this.id = id;
        }

        public String getCreateTime() {
            return createTime;
        }

        public void setCreateTime(String createTime) {
            this.createTime = createTime;
        }

        public String getUpdateTime() {
            return updateTime;
        }

        public void setUpdateTime(String updateTime) {
            this.updateTime = updateTime;
        }

        public String getCreatedBy() {
            return createdBy;
        }

        public void setCreatedBy(String createdBy) {
            this.createdBy = createdBy;
        }

        public String getUpdateBy() {
            return updateBy;
        }

        public void setUpdateBy(String updateBy) {
            this.updateBy = updateBy;
        }

        public Integer getSort() {
            return sort;
        }

        public void setSort(Integer sort) {
            this.sort = sort;
        }

        public Integer getStatus() {
            return status;
        }

        public void setStatus(Integer status) {
            this.status = status;
        }

        public Integer getVersion() {
            return version;
        }

        public void setVersion(Integer version) {
            this.version = version;
        }

        public Integer getShield() {
            return shield;
        }

        public void setShield(Integer shield) {
            this.shield = shield;
        }

        public String getTenantCode() {
            return tenantCode;
        }

        public void setTenantCode(String tenantCode) {
            this.tenantCode = tenantCode;
        }

        public String getSubjectInfoId() {
            return subjectInfoId;
        }

        public void setSubjectInfoId(String subjectInfoId) {
            this.subjectInfoId = subjectInfoId;
        }

        public Object getCreatedByName() {
            return createdByName;
        }

        public void setCreatedByName(Object createdByName) {
            this.createdByName = createdByName;
        }

        public Integer getConsultationMode() {
            return consultationMode;
        }

        public void setConsultationMode(Integer consultationMode) {
            this.consultationMode = consultationMode;
        }

        public String getContent() {
            return content;
        }

        public void setContent(String content) {
            this.content = content;
        }

        public String getUploadImgs() {
            return uploadImgs;
        }

        public void setUploadImgs(String uploadImgs) {
            this.uploadImgs = uploadImgs;
        }

        public Integer getReplyStatus() {
            return replyStatus;
        }

        public void setReplyStatus(Integer replyStatus) {
            this.replyStatus = replyStatus;
        }

        public String getTypeName() {
            return typeName;
        }

        public void setTypeName(String typeName) {
            this.typeName = typeName;
        }

        public Object getQuestionReplyInfoModels() {
            return questionReplyInfoModels;
        }

        public void setQuestionReplyInfoModels(Object questionReplyInfoModels) {
            this.questionReplyInfoModels = questionReplyInfoModels;
        }

        public UserInfoBean getUserInfo() {
            return userInfo;
        }

        public void setUserInfo(UserInfoBean userInfo) {
            this.userInfo = userInfo;
        }

        public Object getExpertNames() {
            return expertNames;
        }

        public void setExpertNames(Object expertNames) {
            this.expertNames = expertNames;
        }

        public Object getNumberOfQuestions() {
            return numberOfQuestions;
        }

        public void setNumberOfQuestions(Object numberOfQuestions) {
            this.numberOfQuestions = numberOfQuestions;
        }

        public Object getQuestionQuantity() {
            return questionQuantity;
        }

        public void setQuestionQuantity(Object questionQuantity) {
            this.questionQuantity = questionQuantity;
        }

        public Integer getReplyQuantity() {
            return replyQuantity;
        }

        public void setReplyQuantity(Integer replyQuantity) {
            this.replyQuantity = replyQuantity;
        }

        public static class UserInfoBean implements Serializable{
            public String id;
            public String createTime;
            public String updateTime;
            public String createdBy;
            public String updateBy;
            public Integer sort;
            public Integer status;
            public Integer version;
            public Integer shield;
            public String loginName;
            public String mobilePhone;
            public Object email;
            public Object roleInfos;
            public Object orgInfos;
            public Object postInfos;
            public String userType;
            public String name;
            public String userNo;
            public Object idCardNo;
            public Object contactPhone;
            public Object remark;
            public Object headPortrait;
            public Object sex;
            public Object contactEmail;
            public Object niceName;
            public Object userBirthday;
            public Object province;
            public Object city;
            public Object county;
            public Object address;
            public Object postNames;
            public Object orgNames;
        }
    }

    public static class SubjectExpertInfoBean implements Serializable{
        public String id;
        public String createTime;
        public String updateTime;
        public String createdBy;
        public String updateBy;
        public Integer sort;
        public Integer status;
        public Integer version;
        public Integer shield;
        public String tenantCode;
        public Object subjectInfoId;
        public Object createdByName;
        public Integer auditStatus;
        public Object auditTime;
        public Object auditPerson;
        public Object auditOpinion;
        public String name;
        public String phone;
        public String userId;
        public String photo;
        public String sex;
        public String birthday;
        public List<TypesBean> types;
        public ExpertTitleBean expertTitle;
        public String expertLevel;
        public String workUnit;
        public ProvinceBean province;
        public CityBean city;
        public CountyBean county;
        public String address;
        public String achievement;
        public String expertIntroduce;
        public String expertTitleImage;
        public String idCardImage;
        public String idCardNum;
        public List<ExpertTitleImageListBean> expertTitleImageList;
        public List<IdCardImageListBean> idCardImageList;
        public UserInfoBean userInfo;
        public Object questionQuantity;
        public Integer replyQuantity;
        public String typeNames;

        public static class ExpertTitleBean implements Serializable{
            public String id;
            public String createTime;
            public String updateTime;
            public String createdBy;
            public String updateBy;
            public Integer sort;
            public Integer status;
            public Integer version;
            public Integer shield;
            public String title;
            public String expertLevel;
            public String tenantCode;
        }

        public static class ProvinceBean implements Serializable{
            public String id;
            public String createTime;
            public String updateTime;
            public Object createdBy;
            public Object updateBy;
            public Integer sort;
            public Integer status;
            public Integer version;
            public Integer shield;
            public String provinceName;
            public String provinceNamePinyin;
            public String provinceAbbreviation;
            public String provinceCode;
            public String countryCode;
            public String provinceType;
            public String name;
            public String pingyin;
            public String code;
            public String pcode;
            public String type;
        }

        public static class CityBean implements Serializable{
            public String id;
            public String createTime;
            public String updateTime;
            public Object createdBy;
            public Object updateBy;
            public Integer sort;
            public Integer status;
            public Integer version;
            public Integer shield;
            public String cityName;
            public Object cityNamePinyin;
            public String cityCode;
            public String provinceCode;
            public String name;
            public Object pingyin;
            public String code;
            public String pcode;
        }

        public static class CountyBean implements Serializable{
            public String id;
            public String createTime;
            public String updateTime;
            public Object createdBy;
            public Object updateBy;
            public Integer sort;
            public Integer status;
            public Integer version;
            public Integer shield;
            public String countyName;
            public Object countyNamePinyin;
            public String countyCode;
            public String cityCode;
            public String name;
            public Object pingyin;
            public String code;
            public String pcode;
        }

        public static class UserInfoBean implements Serializable{
            public String id;
            public String createTime;
            public String updateTime;
            public String createdBy;
            public String updateBy;
            public Integer sort;
            public Integer status;
            public Integer version;
            public Integer shield;
            public String loginName;
            public String mobilePhone;
            public Object email;
            public Object roleInfos;
            public Object orgInfos;
            public Object postInfos;
            public String userType;
            public Object name;
            public Object userNo;
            public Object idCardNo;
            public String contactPhone;
            public Object remark;
            public Object headPortrait;
            public Object sex;
            public Object contactEmail;
            public Object niceName;
            public Object userBirthday;
            public Object province;
            public Object city;
            public Object county;
            public Object address;
            public Object postNames;
            public Object orgNames;
        }

        public static class TypesBean implements Serializable{
            public String id;
            public String createTime;
            public String updateTime;
            public Object createdBy;
            public Object updateBy;
            public Integer sort;
            public Integer status;
            public Integer version;
            public Integer shield;
            public String code;
            public String pcode;
            public Object rcode;
            public String name;
            public Object namePinyin;
            public Object remark;
            public Integer level;
        }

        public static class ExpertTitleImageListBean implements Serializable{
            public String image;
            public String src;
        }

        public static class IdCardImageListBean implements Serializable{
            public String image;
            public String src;
        }
    }
}
